home *** CD-ROM | disk | FTP | other *** search
/ Venus 7000 / darktronics.iso / Software / Service Packs / WinXPSP1.exe / appwiz.cp_ / appwiz.cpl / HTML / ADD.JS < prev    next >
Encoding:
Text File  |  2002-08-29  |  6.5 KB  |  254 lines

  1. function Add_Activate()
  2. {
  3. LoadScriptFile("idScriptUtil", "util.js");
  4. if (false == g_bAddPageLoaded)
  5. {
  6. g_bIsOnDomain = g_docAll.idCtlAppsDso.OnDomain;
  7. }
  8. g_docAll.idTrHeadMargin_Add.style.display = 'block';
  9. g_docAll.idTrHeadCDROM1_Add.style.display = 'block';
  10. g_docAll.idTrHeadCDROM2_Add.style.display = 'block';
  11. g_docAll.idTrHeadInternet1_Add.style.display = 'block';
  12. g_docAll.idTrHeadInternet2_Add.style.display = 'block';
  13. g_docAll.idTrHeadPub_Add.style.display = 'block';
  14. g_docAll.idTrBody2_Add.style.display = 'block';
  15. if (false == g_bAddPageLoaded)
  16. {
  17. if (Dso_IsRestricted("NoAddFromCDorFloppy"))
  18. {
  19. g_docAll.idTrHeadCDROM1_Add.style.visibility = 'hidden';
  20. g_docAll.idTrHeadCDROM2_Add.style.visibility = 'hidden';
  21. }
  22. if (Dso_IsRestricted("NoAddFromInternet"))
  23. {
  24. g_docAll.idTrHeadInternet1_Add.style.visibility = 'hidden';
  25. g_docAll.idTrHeadInternet2_Add.style.visibility = 'hidden';
  26. }
  27. if (false == g_bIsOnDomain || Dso_IsRestricted("NoAddFromNetwork"))
  28. {
  29. g_docAll.idTrHeadPub_Add.style.visibility = 'hidden';
  30. g_docAll.idTrBody2_Add.style.visibility = 'hidden';
  31. g_bIsOnDomain = false; 
  32. }
  33. g_bSelectDefault = true;
  34. }
  35. if (false == g_bIsOnDomain)
  36. {
  37. g_docAll.idTrBody1_Add.style.display = 'block';
  38. }
  39. g_bReenumInstalledList = false; 
  40. if (g_bIsAlpha)
  41. {
  42. g_docAll.idTrFoot_Add.style.display = 'block';
  43. g_docAll.idChkAddForcex86.attachEvent("onclick", new Function("idCtlAppsDso.Forcex86 = idChkAddForcex86.checked"));
  44. }
  45. if (false == g_bAddPageLoaded)
  46. {
  47. g_docAll.idBtnCDFloppy.onclick = _AddApp;
  48. g_docAll.idBtnInternet.onclick = _AddApp;
  49. if (g_bIsOnDomain)
  50. {
  51. _SetPubWaitingFeedback();
  52. g_docAll.idSelCategory.onchange = _OnChangeCategories;
  53. g_docAll.idBindCategories.dataFld = 'displayname';
  54. g_docAll.idBindCategories.dataSrc = '#idCtlAppsDso.Categories';
  55. g_docAll.idSpnAddLaterSchedule.dataSrc = "#idCtlAppsDso.Add"; 
  56. g_docAll.idAddListbox.dataSource = "idCtlAppsDso.Add";
  57. Dso_GetCtl("Categories").attachEvent("ondatasetcomplete", Cat_OnDatasetComplete);
  58. Dso_GetCtl("Add").attachEvent("ondatasetcomplete", Add_OnDatasetComplete);
  59. g_docAll.idAddListbox.Refresh();
  60. }
  61. g_bAddPageLoaded = true;
  62. }
  63. Add_SetFocus();
  64. }
  65. function Add_SetFocus()
  66. {
  67. g_docAll.idAddListbox.focus();
  68. }
  69. function Add_Deactivate()
  70. {
  71. g_docAll.idTrHeadMargin_Add.style.display = 'none';
  72. g_docAll.idTrHeadCDROM1_Add.style.display = 'none';
  73. g_docAll.idTrHeadCDROM2_Add.style.display = 'none';
  74. g_docAll.idTrHeadInternet1_Add.style.display = 'none';
  75. g_docAll.idTrHeadInternet2_Add.style.display = 'none';
  76. g_docAll.idTrHeadPub_Add.style.display = 'none';
  77. g_docAll.idTrFoot_Add.style.display = 'none';
  78. g_docAll.idTrBody1_Add.style.display = 'none';
  79. g_docAll.idTrBody2_Add.style.display = 'none';
  80. if (g_bReenumInstalledList)
  81. {
  82. Dso_Refresh("Remove");
  83. }
  84. }
  85. function Add_OnSetFocus()
  86. {
  87. var evt = window.event;
  88. ApplyExtraStyles(evt.srcChild, evt.bFocus);
  89. }
  90. function Add_OnCustomDraw()
  91. {
  92. var evt = window.event;
  93. var tblElem = evt.srcChild; 
  94. if (evt.bSelected)
  95. {
  96. var dwCapability = evt.Recordset("capability");
  97. if ('prepaint' == evt.drawStage)
  98. {
  99. if (dwCapability & APPCAP_ADDLATER)
  100. {
  101. evt.srcElement.EnableTemplate('idTrMultiBtns', true);
  102. evt.srcElement.EnableTemplate('idTrSingleBtns', false);
  103. }
  104. else
  105. {
  106. evt.srcElement.EnableTemplate('idTrMultiBtns', false);
  107. evt.srcElement.EnableTemplate('idTrSingleBtns', true);
  108. }
  109. }
  110. else
  111. {
  112. if (dwCapability & APPCAP_ADDLATER)
  113. {
  114. tblElem.all("idBtnAdd").onclick = _AddApp;
  115. tblElem.all("idBtnAddLater").onclick = _AddLater;
  116. }
  117. else
  118. {
  119. tblElem.all("idBtnAdd").onclick = _AddApp;
  120. }
  121. var szSupportUrl = evt.Recordset("supporturl");
  122. if ("" != szSupportUrl)
  123. {
  124. var spnMoreInfo = tblElem.all("idSpnMoreInfo");
  125. spnMoreInfo.all("idAMoreInfo").href = szSupportUrl;
  126. spnMoreInfo.style.display = 'block';
  127. }
  128. ApplyExtraStyles(evt.srcChild, evt.bFocus);
  129. }
  130. }
  131. }
  132. function _OpenMoreInfo()
  133. {
  134. var url = event.srcElement.parentElement.href;
  135. window.open(url, "", "");
  136. event.returnValue = false;
  137. }
  138. function _FilterCategories(optElem)
  139. {
  140. var szFilter;
  141. _SetPubWaitingFeedback();
  142. if (optElem.value == "all")
  143. szFilter = "";
  144. else
  145. szFilter = optElem.value;
  146. Dso_Filter("Add", szFilter);
  147. }
  148. function _OnChangeCategories()
  149. {
  150. var elem = window.event.srcElement;
  151. var optElem = elem.options(elem.selectedIndex);
  152. _FilterCategories(optElem);
  153. }
  154. function _AddApp()
  155. {
  156. var rsCur = Dso_GetRecordset("Add");
  157. switch(event.srcElement.id)
  158. {
  159. case "idBtnAdd":
  160. g_docAll.idCtlAppsDso.Exec("Add", "install", rsCur.AbsolutePosition);
  161. break;
  162. case "idBtnCDFloppy":
  163. g_docAll.idCtlAppsDso.Exec("Add", "generic install", 0);
  164. break;
  165. case "idBtnInternet":
  166. g_docAll.idCtlAppsDso.Exec("Add", "winupdate", 0);
  167. break;
  168. }
  169. if ("idBtnAdd" == event.srcElement.id || "idBtnInternet" == event.srcElement.id)
  170. {
  171. g_bReenumInstalledList = true;
  172. }
  173. }
  174. function _AddLater()
  175. {
  176. var rsCur = Dso_GetRecordset("Add");
  177. g_docAll.idCtlAppsDso.Exec("Add", "addlater", rsCur.AbsolutePosition);
  178. window.event.returnValue = false;
  179. window.event.cancelBubble = true;
  180. }
  181. function _Schedule()
  182. {
  183. var elemSrc = window.event.srcElement;
  184. if ("idASchedule" == elemSrc.id)
  185. {
  186. var rsCur = Dso_GetRecordset("Add");
  187. g_docAll.idCtlAppsDso.Exec("Add", "addlater", rsCur.AbsolutePosition);
  188. }
  189. window.event.returnValue = false;
  190. window.event.cancelBubble = true;
  191. }
  192. function _ResetCategoryList()
  193. {
  194. var i;
  195. var optElem;
  196. var colOptions = g_docAll.idSelCategory.options;
  197. for (i = 0; i < colOptions.length;)
  198. {
  199. optElem = colOptions[i];
  200. if (optElem.value != "all") 
  201. optElem.removeNode();
  202. else
  203. i++;
  204. }
  205. }
  206. function _InitCategoryList()
  207. {
  208. var rsCur = Dso_GetRecordset("Categories"); 
  209. if (rsCur.RecordCount > 0)
  210. {
  211. var i;
  212. var szDefault;
  213. var optElemSel = null;
  214. szDefault = g_docAll.idCtlAppsDso.DefaultCategory;
  215. if ("" == szDefault)
  216. {
  217. szDefault = "all"; 
  218. }
  219. rsCur.MoveFirst();
  220. for (i = 1; i <= rsCur.RecordCount; i++)
  221. {
  222. var optElem = document.createElement("option");
  223. optElem.value = rsCur("displayname");
  224. optElem.text = rsCur("displayname");
  225. if (g_bSelectDefault && optElem.value == szDefault)
  226. {
  227. optElem.selected = true; 
  228. optElemSel = optElem;
  229. }
  230. g_docAll.idSelCategory.add(optElem); 
  231. rsCur.MoveNext();
  232. }
  233. if (optElemSel)
  234. _FilterCategories(optElemSel);
  235. g_bSelectDefault = false; 
  236. }
  237. function Cat_OnDatasetComplete()
  238. {
  239. if (window.event.qualifier == "Categories")
  240. {
  241. _ResetCategoryList();
  242. _InitCategoryList();
  243. }
  244. }
  245. function Add_OnDatasetComplete()
  246. {
  247. if (window.event.qualifier == "Add")
  248. {
  249. var L_AddNoneAvailable_Text = "No programs are available on the network";
  250. Dso_FeedbackIfEmpty("Add", g_docAll.idAddListbox, L_AddNoneAvailable_Text);
  251. }
  252. }
  253.